首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏JMCui

    Java 原生网络编程.

    一、概念     Java 语言从其诞生开始,就和网络紧密联系在一起。 在 1995 年的 Sun World 大会上,当时占浏览器市场份额绝对领先的网景公司宣布在浏览器中支持Java,从而引起一系列的公司产品对Java的支持,使得Java很快成为一种流行的语言。     Java 提供的网络功能的相关类主要有三个,它们分别是URL、Socket、Daragram。 Java 语言中的 Socket 编程常用到 Socket 和 ServerSocket 这两个类。     Java 主要提供两个类来实现基于 UDP 的 Socket 编程:     DatagramSocket:此类表示用来发送和接收数据报包的套接字,数据报套接字是包投递服务的发送或接收点,每个在数据报套接字上发送或接收的包都是单独编址和路由的

    61120发布于 2018-08-01
  • 来自专栏蚊子.

    RabbitMQ原生Java使用

    .*; import com.zb.util.MyConnection; import java.io.IOException; public class Consumer { public 号接受端: package com.zb.woker; import com.rabbitmq.client.*; import com.zb.util.MyConnection; import java.io.IOException 号接受端: package com.zb.topic; import com.rabbitmq.client.*; import com.zb.util.MyConnection; import java.io.IOException ; import java.util.HashMap; import java.util.Map; public class OneConsumer { public static void ; import java.util.HashMap; import java.util.Map; public class TwoConsumer { public static void

    42620编辑于 2023-08-10
  • 来自专栏刷题笔记

    Java老矣,云原生时代的 Java危机

    QCon2020 主题演讲:云原生时代,Java 的危与机 周志明老师的这个演讲 知识点过于密集,我把他拆一下,方便理解一点 推荐阅读原视频和相关文稿 在文章下面评论了一下 没想到老师还回复了 文章目录 技术演进与政治格局 Java的危机 Java —— 最具统治力的编程语言 托管语言 —— 一次编译到处运行 云原生—— 操作系统层虚拟化 翻天覆地 享受了硬件红利 —— 与技术潮流的直接冲突 spring 程序员占 Java 程序员的 86%,所以他们联手开发 是 当前技术格局下 Java 与 go 等原生语言竞争的必然选择。 云原生—— 操作系统层虚拟化 翻天覆地 云原生通过 容器的不可变基础设施 实现 操作系统层虚拟化。 不仅 方便运维 程序升级 和 部署。 新一代的原生语言 重视 轻量化 和快速响应 能力,又回归到了 原生语言 (Golang、Rust)上。

    84010发布于 2021-10-13
  • 来自专栏狗哥的专栏

    笔记:追随云原生Java

    1.变革之火 1.1 Complie Native Code 显然,如果将字节码直接编译成可以脱离 Java 虚拟机的原生代码则可以解决所有问题。 如果真的能够生成脱离 Java 虚拟机运行的原生程序,将意味着启动时间长的问题能够彻底解决,因为此时已经不存在初始化虚拟机和类加载的过程。 )优化,基本原理是如果能通过分析,得知一个对象不会传递到方法之外,那就不需要真实地在对象中创建完整的对象布局,完全可以绕过对象标识符,将它拆散为基本的原生数据类型来创建,甚至是直接在栈内存中分配空间(HotSpot 2.小结 目前在云原生领域,Java可能未必是好的选择——在这个领域最让人难以忍受的就是其庞大的Runtime以及较长的Startup时间,在以前这是Java优点的来源,但到了云原生时代,则成了Java 因此Java想在云原生时代继续保持前几十年的趋势,解决这个问题迫在眉睫。从这个点来看,我很看好Quarkus。

    33610编辑于 2024-01-09
  • 来自专栏深度学习与python

    Java原生之路:Micronaut 框架

    Java 主导着企业级应用。但在云计算领域,采用 Java 的成本比它的一些竞争对手更高。原生编译降低了在云端采用 Java 的成本:用它创建的应用程序启动速度更快,使用的内存更少。 那么,Java 用户的问题来了:原生 Java 是如何改变开发方式的?我们在什么情况下应该切换到原生 Java?什么情况下又不应该切换?我们应该使用什么框架?本系列文章将回答这些问题。 你至少需要 Java SE 8 或更高版本的 JDK。如果要使用原生镜像特性,你需要 Java 11 或更高版本的 GraalVM JDK。 GraalVM 原生镜像可以很好地支持 Java 反射、运行时代理和动态类加载。开发人员需要为原生镜像提供必要的配置,说明在何时何地可以使用它们。 总 结 Micronaut 框架为服务器端 Java 工作负载带来了一股新鲜的空气。它提供了一种创新的编译时方法和特性,使其成为构建现代云原生 Java 应用程序的最佳候选。

    2.6K10编辑于 2022-06-13
  • 来自专栏技术那些事

    Java 革新之路:GraalVM 原生镜像

    原生编译降低了在云端采用 Java 的成本:用它创建的应用程序启动速度更快,使用的内存更少。 那么,Java 用户的问题来了:原生 Java 是如何改变开发方式的? 我们在什么情况下应该切换到原生 Java?什么情况下又不应该切换?我们应该使用什么框架?本系列文章将回答这些问题。 GraalVM 自三年前发布以来,引发了一场 Java 开发革命。 哪些 Java 框架采用了原生镜像 如果没有 Java 框架的支持,开发行业级应用程序将是非常困难的。幸运的是,现在有很多可用的框架。 原生镜像的未来 自从第一次公开发布以来,原生镜像已经取得了巨大的进步。它被 Java 框架广泛采用,云供应商也将原生镜像作为 Java 运行时,许多库也都使用了原生镜像。 对于原生镜像的新特性和改进,我们有很多想法,包括: 支持更多的平台; 简化 Java 库的配置和兼容性; 继续优化峰值性能; 继续与 Java 框架团队合作,充分利用所有的原生镜像特性,开发新的特性,提高性能

    2.1K40编辑于 2022-09-07
  • 来自专栏深度学习与python

    现实世界中的原生 Java

    原生编译给 Java 用户带来了许多问题:原生 Java 对开发有什么影响?我们什么时候应该改用原生 Java?什么时候不应该?我们应该使用什么框架来开发原生 Java?这个系列将回答这些问题。 切换到原生 Java 可以减少近 50% 的成本,因为只需要一半的资源。扩大到所有集群,这将为我们节约巨额的成本! 何时使用原生 Java 原生 Java 令人印象深刻。 新增的微服务是原生 Java 的理想起点,因为可以从头开始编写,利用成熟的原生库。 在决定将什么切换到原生 Java 时,可以从以下这些先决条件入手: 服务是独立的吗? 启动时间和扩展重要吗? 所以,根据我们的经验,一个 Java 库要么兼容原生 Java,要么不兼容。 使用一个提供了一套精选库的框架,方便我们知道在原生 Java 中什么有效什么无效。 根据我们的经验,在以下情况下,迁移到原生 Java 是没有意义的: 启动时间、扩展、资源需求都不很重要; 特定的库没有等价的原生 Java 版本,或者对于原生支持不好; 大量使用 Java 动态特性,如反射或动态代理

    88720编辑于 2022-06-11
  • 来自专栏麒思妙想

    GraalVM:云原生时代的Java

    virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java , Kotlin, and LLVM-based languages such as C and C++. https://github.com/oracle/graal GraalVM作为一个独立的Java 开发工具包可以运行Java或者基于JVM的程序。 下文中,提到的native-image,也是需要单独下载安装的,他可以吧普通java类编译成本地文件 首先准备一个简单的java类, public class Helloworld { public ; } } 编译 javac Helloworld.java 将class文件编译成本地文件 native-image Helloworld 会输出一个 helloworld的本地文件,直接执行即可

    1.4K20发布于 2020-07-10
  • 来自专栏IT大咖说

    原生java的那些事儿

    内容来源:2017年12月16日,京东金融数据研发负责人张亮在“数人云Meetup | 下一代微服务:ServiceMesh Is Coming”进行《云原生java的那些事儿》演讲分享。 阅读字数:2512 | 7分钟阅读 摘要 在微服务概念大行其道的今天,Java无疑是相关生态体系最为完善开发语言。但云原生概念的出现,更加强调异构语言的无差异化开发。 那么Java的强大生态体系该如何与云原生对接,又应该做哪些取舍,最终的发展趋势如何?本次将分享一些我的看法。 云原生是一种模式 云原生其实是一种模式,它要求更高的可用性和伸缩性,也就是要求应用永远不会挂掉,并且能够自动的针对流量进行扩容。 云原生十二要素 由于不是所有的程序都能够无缝的在云平台运行,所以做云原生的程序就要满足云原生的十二要素。

    1.6K100发布于 2018-04-18
  • 来自专栏腾讯云TVP

    Graal VM:云原生时代的Java

    对于一些本来就不以速度见长的语言运行环境,由于Graal VM本身能够对输入的中间表示进行自动优化,在运行时还能进行即时编译优化,往往使用Graal VM实现能够获得比原生编译器更优秀的执行效率,譬如Graal.js 向原生迈进 对不需要长时间运行的,或者小型化的应用而言,Java(而不是指Java ME)天生就带有一些劣势,这里并不光是指跑个HelloWorld也需要百多兆的JRE之类的问题,而更重要的是指近几年从大型单体应用架构向小型微服务应用架构发展的技术潮流下 大多数运行期对字节码的生成和修改操作,在Graal VM看来都是无法接受的,因为Substrate VM里面不再包含即时编译器和字节码执行引擎,所以一切可能被运行的字节码,都必须经过AOT编译成为原生代码 可以预料,这些第三方库一旦脱离了Java虚拟机,在原生环境中肯定会暴露出无数千奇百怪的异常行为。Graal VM团队对此的态度非常务实,并没有直接硬啃。 然后,由于我们用的是Graal VM的Java 8版本,也必须假设你编译使用Java语言级别在Java 8以内。

    2.3K11发布于 2020-05-02
  • 来自专栏楠笙的生活与学习

    使用Java原生api压缩图片

    40710编辑于 2024-12-31
  • 来自专栏kl的专栏

    Quarkus云原生java框架简介(1)

    前言 Quarkus 是小红帽开源的专门针对云容器环境优化的云原生java框架,目前已迭代到1.6.0版本,已完成了大部分的框架库的集成扩展,为了让你低成本迁移到Quarkus来,它兼容主流的框架开发模式 Quarkus 是一个为 Java 虚拟机(JVM)和原生编译而设计的全堆栈 Kubernetes 原生 Java 框架,用于专门针对容器优化 Java,并使其成为无服务器、云和 Kubernetes 此外,它还向 GraalVM(一种通用虚拟机,用于运行以多种语言(包括 Java 和 JavaScript)编写的应用)提供正确信息,以便对应用进行原生编译。 为什么用quarkus? 2、开发人员可以为其应用选择所需的 Java 框架,而这些应用可以在 JVM 模式下运行,也可以在原生模式下进行编译和运行。  这对于习惯使用命令式模型而不想切换风格的 Java 开发人员以及使用云原生/响应式方法的开发人员都非常有用。 Quarkus 开发模型可以适应您正在开发的任何应用。

    1.3K40编辑于 2023-11-18
  • 来自专栏让技术和时代并行

    java原生序列化慢在哪里?

    Java原生序列化和二进制序列化性能比较 序列化速度 package com.clq.netty.serializable; import java.io.ByteArrayOutputStream ; import java.io.IOException; import java.io.ObjectOutputStream; import java.io.Serializable; import java.nio.ByteBuffer; /** * Created by clq on 2018/7/20. */ public class UserInfo implements Serializable 序列化耗时: 1388ms 二进制序列化:118ms java原生序列化的速度是二进制序列化速度的 8.19% 序列化大小 public static void main(String[] args 原因分析 java的序列化后的码流可以得出: Java本身并不支持跨语言,因为加入了序列化版本号,类名等信息,所以导致码流变大,速度变慢。

    1.1K20发布于 2019-04-16
  • 来自专栏Java技术栈

    为什么不建议使用 Java 原生 IO?

    对于 Java 原生的 IO 我们之所以不选择使用是因为: NIO的类库和API繁杂使用麻烦,你需要熟练掌握Selectol,ServerSocketChannel, SocketChannel,ByteBuffer 需妥具备其他的额外技能做制垫,例如熟悉Java 多线程编程。这是因为NIO编程涉及到Reactor 模式,你必须对多钱程和网络编程非常如悉,才能编写出高质量的NIO程序。 基于上述原因大多数场景下都不建议直接使原生 NIO,除非你精通 NIO 编程或者是有特殊的需要,否则作为服务器编程的NIO可能会带来巨大的生产隐患。 另外,关注公众号Java技术栈,在后台回复:面试,可以获取我整理的 Java 系列面试题和答案,非常齐全。

    97760发布于 2021-06-16
  • 来自专栏MCNU云原生

    GraalVM-云原生时代的JVM(Java)

    它可以运行多种编程语言,如Java、JavaScript、Python等,并提供了即时编译(JIT)和AOT编译(AOT)的支持。 从下图可以看到,使用Native Image编译得Java微服务应用相比较于原来的HotSpot模式,启动时间大大地缩短了。而这正式云原生时代serverless所需要的快速启动的能力。 2.2、多语言支持 GraalVM支持多种编程语言,如Java、JavaScript、Python等,甚至还支持R、Ruby、C等语言。 从下图可以看到使用Native Image构建的Java微服务应用在内存消耗上更少,能够更加有效利用系统资源。 总之,GraalVM是一个非常强大和灵活的工具,可以帮助开发者构建高性能、多语言和云原生的应用程序。随着GraalVM在国内的推广和应用越来越广泛,相信它将会在未来的软件开发领域发挥越来越重要的作用。

    1.9K20编辑于 2023-03-17
  • 来自专栏腾讯云中间件的专栏

    原生时代的Java应用优化实践

    但在如今的云原生serverless时代,Java应用却遭遇到了前所未有的挑战。 Java应用固有的内存占用多的劣势,在云原生时代被放大,相对于其他语言,使用起来变得更加“昂贵”。 由此可见,在云原生时代,Java应用的优势正在不断被蚕食,而劣势却在不断的被放大。 因此,如何让我们的应用更加顺应时代的发展,使Java语言能在云原生时代发挥更大的价值,就成了一个值得探讨的话题。 使用TEM进行零改造的Java应用云原生优化 通过上面的分析,我们可以看出,如果想要让我们的Java应用能在云原生时代发挥出最大实力,是需要付出许多侵入性的改造和优化操作的。 那么有没有一种方式能够帮助我们零改造的开展Java应用云原生优化? 腾讯云的TEM弹性微服务就为广大Java开发者提供了一种应用零改造的最佳实践,帮助您的Java应用以最优姿态快速上云。

    1.5K20编辑于 2022-03-03
  • 来自专栏程序猿DD

    原生时代,Java的危与机

    这本该是一次编写,到处运行的Java优势所在。但Java的其他特性,比如语法稍显啰嗦、面向大规模、长时间服务端应用设计,在云原生时代的微服务化趋势下,又有所偏差。 10月27、28日,稀土掘金技术社区主办的【稀土开发者大会】专门设置了「Java实战」和「云原生技术应用」专题,为Java语言从业者在云原生时代锚定自己的位置,也为Java未来的发展提出一些猜想和建议。 Java 实战 演讲一:Jakarta EE技术演进适应云原生发展 Jakarta EE是Java EE重新命名后,整个Java社区参与并推动发展的开发框架,也是Java中间件规范。 演讲嘉宾:童寅(公与)——PerfMa 云端创新事业部XLab首席架构师 演讲三:Visual Studio Code - 开发云原生Java应用的新机会 云原生时代,Java应用被大量部署到云端,我们的开发体验能否也在云端完成呢 本次分享将介绍VS Code给Java开发者带来的体验,以及它云原生特性背后的奥秘。

    74840编辑于 2023-04-04
  • 来自专栏深度学习与python

    借助 Spring Boot 和 GraalVM 实现原生 Java

    Java 在主导着企业级应用。但是在云中,采用 Java 的成本要比其竞争者更高。使用 GraalVM 进行原生编译降低了在云中 Java 的成本:它所创建的应用启动更快,使用的内存也更少。 原生编译为 Java 用户带来了很多的问题:原生 Java 会如何改变开发方式?我们在什么情况下该转向原生 Java?在什么情况下又该避免转向原生 Java?要使用原生 Java,我们该采用哪个框架? 在这个过程中,我们可能不需要链接任何比java.lang.Object更具体的类。但是,如果这些类型没有被放到原生可执行堆中,所有的这些方式在原生 Java 中是无法正常运行的。 ,如果测试成功的话,还会编译原生应用本身。 继续将第三个应用编译为原生可执行文件。

    1.4K30编辑于 2023-04-01
  • 推箱子_Java原生代码_50张地图

    前言为了学习java,研制了本教程最近不上班,闲得无聊,整理了很多java网站相关的源码,开箱即用,适合二开。今天为大家介绍一款超级好用的《推箱子》搭建部署教程,希望大家喜欢。 部署步骤安装eclipse(这一步就不需要讲了)打开eclispe,导入普通java工程等编译完成后 ,然后找到main函数,右键运行即可源码私聊小编获取,回复不及时请谅解4.

    22500编辑于 2024-06-14
  • 来自专栏云原生研究

    Quarkus 云原生java开发框架1: hello world

    Quarkus 是啥 夸克,超光速,亚原子的 Java。 为云原生而生,为消息驱动的微服务而生。 人话:大幅提高启动速度,大幅减少内存占用,内置了很多优选组件/扩展。 环境准备 既然是一个 java 应用,那应该是无需什么准备的,jdk,maven 这些都有了。 但 jdk 和 maven 请用最新版(jdk≥1.8 && maven≥3.6.2)。 刷一下,有结果了 { "age": 23, "gender": false, "name": "Bear" } 云原生 其实,实现了 restful,再部署到 istio,微服务便完成大半了 下一篇会继续探讨更多 Qarkus 的云原生和微服务的细节。

    1.8K105发布于 2020-05-22
领券